package com.aimer;

import android.app.Application;

import com.alibaba.android.arouter.launcher.ARouter;
import com.blankj.utilcode.util.AppUtils;
import com.blankj.utilcode.util.LogUtils;

import com.tencent.bugly.crashreport.CrashReport;
import com.tencent.rtmp.TXLiveBase;
import com.tencent.rtmp.TXLiveBaseListener;
import com.tencent.rtmp.TXLiveConstants;
import com.tencent.smtt.export.external.TbsCoreSettings;
import com.tencent.smtt.sdk.QbSdk;


import java.util.HashMap;

import pic.PicLoadManager;


public class AimerApplication extends Application   {

    private static  final  String TAG ="AimerApplication";

    @Override
    public void onCreate() {
        super.onCreate();

        txPlay();



        LogUtils.getConfig().setLogSwitch(AppUtils.isAppDebug());
        ARouter.openLog();     // 打印日志
        ARouter.openDebug();   // 开启调试模式(如果在InstantRun模式下运行，必须开启调试模式！线上版本需要关闭,否则有安全风险)
        ARouter.init(this);
        PicLoadManager.initialization(this);
        TXLiveBase.setLogLevel(TXLiveConstants.LOG_LEVEL_DEBUG);


        //Buglf 第二个是ID 第三个参数为SDK调试模式开关，调试模式的行为特性如下： 建议在测试阶段建议设置成true，发布时设置为false。
        CrashReport.initCrashReport(getApplicationContext(), "62098e6021", true);

        initTBS();
    }

    private void initTBS() {

        HashMap map = new HashMap();
        map.put(TbsCoreSettings.TBS_SETTINGS_USE_SPEEDY_CLASSLOADER, true);
        map.put(TbsCoreSettings.TBS_SETTINGS_USE_DEXLOADER_SERVICE, true);
        QbSdk.initTbsSettings(map);
        // 检查是否已经初始化
        boolean hasInit = QbSdk.isTbsCoreInited();
        LogUtils.d("TBS 有没有初始化"+hasInit);
        if (!hasInit) {
            // 指定使用QuickBSSdk初始化TBS
            QbSdk.PreInitCallback cb = new QbSdk.PreInitCallback() {
                @Override
                public void onViewInitFinished(boolean arg0) {
                    // 初始化完成回调
                    if (arg0) {
                        // 初始化成功
                    } else {
                        // 初始化失败
                    }
                }

                @Override
                public void onCoreInitFinished() {
                }
            };
            // 进行预初始化
            QbSdk.initX5Environment(getApplicationContext(), cb);
        }
    }



    public  void txPlay(){
        String licenceURL = "https://license.vod2.myqcloud.com/license/v2/1257572751_1/v_cube.license"; // 获取到的 licence url
        String licenceKey = "36678f22b2ceeb72622a0477d3a6ec6c"; // 获取到的 licence key
        TXLiveBase.getInstance().setLicence(getApplicationContext(), licenceURL, licenceKey);
        TXLiveBase.setListener(new TXLiveBaseListener() {
            @Override
            public void onLicenceLoaded(int result, String reason) {
                LogUtils.i(TAG, "onLicenceLoaded: result:" + result + ", reason:" + reason);
                if (result != 0) {
                    // 如果 result 不为 0，表示设置失败，需要进行重试
                    TXLiveBase.getInstance().setLicence(getApplicationContext(), licenceURL, licenceKey);

                }
//                LogUtils.d(TAG,"版本号"+  TXLiveBase.getSDKVersionStr());
            }
        });
    }



}
